-
Notifications
You must be signed in to change notification settings - Fork 29.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[v14.x backport] stream: simpler and faster Readable async iterator #34887
Conversation
91ba1df
to
8fecd44
Compare
This comment has been minimized.
This comment has been minimized.
8fecd44
to
6c942b0
Compare
This has a dependency on #34103 which I had to include. |
@MylesBorins There are two backports in this PR. Would I need to open separate PRs? The first commit doesn't make much sense to backport without the second one. |
Weird test failure? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lgtm - I think this is the right thing to do long term.
@nodejs/streams |
We're still seeing this in the CI on multiple platforms. Anyone able to take a look please? |
Who can help with that? I have no clue. |
09369a0
to
fb2111e
Compare
Discussed in TSC meeting today, no objections raised by TSC members that were there. Myles, sees Matteo chiming that it is a good thing so comfortable that it land given that stream subsystem team members are signing off once ci is green. Removing the agenda tag. |
Fixes some compatibility issues where it is expected that for await stops reading when the stream is destroyed. Refs: nodejs#34887
This needs some more collaborator review to ensure we are confident with landing it in 14.x. |
Just FYI in case it shows up in this PR, it looks like |
@BethGriggs Green CI. Just needs another approval or two. Thanks for the ping! |
What are the commits that are backported here? Have we got a references to those two PRs? |
@ronag it seems like multipel prs + commits have all merged into one here. I'm assuming that it will be a lot of work to split them up... so in lieu of that I think we could treat this as an entirely new change that avoids needing to backport the other change. That does mean we will need at least 2 signoff before landing this. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lgtm
what is the diff vs what we have on master? |
Once #35640 is merged, I believe they are exactly the same. |
@mcollina @ronag . Should we rush getting this into the next 14? it will be the last release before LTS, planned to go out tomorrow I'll be honest, considering these changes caused issues in the past I'm a bit nervous about including them just before flipping the LTS bit, but perhaps I am being too conservative. What do y'all think? |
I think we would like to have this in v14 to simplify backporting. |
FWIW, i'm somewhat leaning the opposite way, and feel that (for the same reasons) this change should land before v14.x is promoted to LTS. (Assuming that CITGM is happy.) |
@ronag would you be able to rebase so we can make sure the asan test isn't broken by this PR |
@nodejs/streams we still need 1 more sign off on this |
I'm 99% sure the test failure here was broken on 14.x before this was opened and the PR just needs a rebase. I'm going to land this as soon as #35640 lands |
Fixes some compatibility issues where it is expected that for await stops reading when the stream is destroyed. Refs: #34887 PR-URL: #35640 Reviewed-By: Rich Trott <[email protected]> Reviewed-By: Matteo Collina <[email protected]> Reviewed-By: Luigi Pinca <[email protected]> Reviewed-By: James M Snell <[email protected]>
includes: * stream: simpler and faster Readable async iterator * stream: don't destroy on async iterator success * stream: async iterator stop read if destroyed PR-URL: #34887 Refs: #34035 Refs: #35122 Refs: #35640 Refs: #34680 Reviewed-By: Luigi Pinca <[email protected]> Reviewed-By: Matteo Collina <[email protected]>
Landed in 573410f Hopefully I captures things accurately in the commit message |
A backport of semver-major labelled PR. Was discussed with TSC who gave a go ahead to open a PR and try to gain approval from collaborators.
PR: #34035
Refs: #34680
Checklist
make -j4 test
(UNIX), orvcbuild test
(Windows) passesWritable stream could emit 'finish' after 'close'.
PR-URL: #32933
Reviewed-By: Luigi Pinca [email protected]
Reviewed-By: Matteo Collina [email protected]